wx.cloud.init()
const db = wx.cloud.database()
var util = require('../../util/util')
Page({
  /**
   * 页面的初始数据
   */
  data: {
    //数据库所需数据
    //uesrInfo为用户信息
    userInfo:"",
    tags:"选择资源标签",
    type:"",
    title:"",
    description:"",
    url:"",
    files:[],
    id:"",
    colorIndex: null,
    select: false,
    types:["课程推荐","往年题目","课件笔记"],
    canIUse: wx.canIUse('button.open-type.getUserInfo'),
  },
//  点击出现下拉框
  click:function(){
    this.setData({
      select:!this.data.select
  })
  },
  //选择内容
  mySelect:function(e){
    var name = e.currentTarget.dataset.name
    this.setData({
      tags: name,
      select: false
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    let user=wx.getStorageSync('user')
    this.setData({
      userInfo:user
    })
  },
  //登录
  login(){
    wx.getUserProfile({
      desc:'必须授权后才能继续使用',
      success:res=>{
        let user=res.userInfo
        //设置本地缓存,把用户信息缓存到本地
        wx.setStorageSync('user',user)
        console.log('用户信息',user)
        this.setData({
          userInfo:user
        })
      }
  })
  },
  //选择type
  select_type:function (e) {
    this.setData({
      type: this.data.types[e.currentTarget.dataset.index],
      colorIndex: e.currentTarget.dataset.index
    })
  },
  //获取title数据
  Input_Title:function (e) {
    this.setData({
      title: e.detail.value
    })
  },
  //获取description数据
  Input_Description:function (e) {
    this.setData({
      description: e.detail.value
    })
  },
  //获取url数据
  Input_Url:function (e) {
    this.setData({
      url: e.detail.value
    })
  },
  //点击上传文件
  //上传文件到服务器中
  upLoadAction:function(e){
    var that = this
    if(that.data.files.length === 1){
      wx.showToast({
        icon:'none',
        title: '已经上传文件了'
      })
    }else{
      wx.chooseMessageFile({
        //只允许上传一个文件
        count: 1,
        //type默认值为all，选择file
        type:'file',
        success(res){
          that.setData({
            files : that.data.files.concat(res.tempFiles[0])
          })
          wx.showLoading({
            title: '文件上传中',
          })
          const filepath = res.tempFiles[0]
          wx.cloud.uploadFile({
            cloudPath:'Study_Files/' + filepath.name,
            filePath:filepath.path,// 本地文件路径
            success: (res) => {
              that.data.id = res.fileID
            },
            fail: (err) =>{
              wx.showToast({
                icon:'none',
                title: '上传失败，请重新上传',
              })
            },
            complete :()=>{
              wx.hideLoading({})
            }
          })
        }
      })
    }
  },
  //点击删除文件
  DeleteFile:function () {
    this.setData({
      files:[],
      id:""
    })
    wx.cloud.deleteFile({
      fileList:[this.data.id],
      success(res){

      },
      fail(err){
        console.log(err)
      }
    })
  },
  //判断文件后缀名
  GetFilesName:function (file) {
    let name = file.name
    for(let i = 0;i < name.length;i++){
      if(name[i] === "."){
        if(name[i + 1] === "d"){
          return ".doc"
        }else if (name[i + 1] === "p"){
          if(name[i + 2] === "d")
            return ".pdf"
          else
            return ".ppt"
        }
      }
    }
  },
  //上传数据到服务器
  Publish:function (e) {
    if(!this.data.title){
      wx.showToast({
        icon:'none',
        title: '请填写标题'
      })
    }
    else if(!this.data.description){
      wx.showToast({
        icon:'none',
        title: '请填写资源描述'
      })
    }
    else if(this.data.tags == "选择资源标签"){
      wx.showToast({
        icon:'none',
        title: '请选择一个标签'
      })
    }
    else if(!this.data.type){
      wx.showToast({
        icon:'none',
        title: '请选择一个类型'
      })
    }
    else{
      let oldtime = new Date().getTime()
      let time = util.formatTime(new Date())
      //上传数据成功后清空
      db.collection('Study_Information').add({
        data:{
          user_name:this.data.userInfo.nickName,
          title: this.data.title,
          description: this.data.description,
          tag: this.data.tags,
          format_time:time,
          hot:0,
          type:this.data.type,
          file_id:this.data.id,
          time:oldtime,
          url:this.data.url,
          avatarUrl:this.data.userInfo.avatarUrl
        },
        success:(res) => {
          //上传成功后清空数据
          this.setData({
            title: "",
            description: "",
            tags: "选择资源标签",
            url:"",
            files:[],
            type:"",
            colorIndex: null,
            id:""
          })
          wx.showToast({
            icon:'success',
            title: '发布成功！'
          })
          wx.navigateBack({
            delta: 1,
          })
        },
        fail:(err) => {
          console.log(err)
        }
      })
    }
  },



  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
   
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})